Allowing multiple telephone users to be connected to and communicate with one another on the same call, a feature known as "conferencing", is a commonly found and popular application of traditional circuit-switched telephone networks. With the growing usage of local and wide area networks, not only for the communication of computer data, but also for the communication of voice and video, the demand has become evident for conventional circuit-switched telephony features, such as conferencing, implemented on a LAN/WAN. Various communication devices traditionally used in circuit-switched telephone networks can be used to communicate over a LAN/WAN; personal computers and telephones are but two examples. Such networks can also be connected to the Public Switched Telephone Network (PSTN) via a gateway. Many offices today are already wired for connection to a local area network. Access to wide-area networks, such as the Internet, is also available to many users. Devices have been developed to facilitate voice and video communication over such networks using a standard Internet protocol (IP).
Current methods of facilitating conferencing of users over a LAN/WAN are either client-based or server-based. In a client-based method, each of the clients in the conference call transmits their signals over the LAN/WAN to every other client involved in the conference call. Accordingly, each client in the conference call receives individual signals from all of the other clients involved in the call. The combination of the individually received signals is performed locally, at each of the receiving clients. There are certain drawbacks to the use of such a method. In general, the transmission of signals from each client to every other client in a conference call requires much network bandwidth. It also causes network congestion and delays in receipt of the data packets that make up the signals. The client-based conferencing method also requires that the clients participating in the conference call each have the functionality to combine the individually received signals, thus necessitating the use of specialized equipment at each client.
In a server-based method, the server performs the conferencing function. All of the clients involved in a conference connection transmit their individual signals to the server. The server then combines them and sends a client specific signal to each of the clients. The combined signal sent to a particular client contains the combined signals of the other clients but does not contain that particular client's own signal. As a result, those clients in a voice conference call who are not talking all receive separate but substantially similar combined signals from the server. One drawback of this method is that it results in increased network congestion and delays. Additionally, since different output streams must be generated and routed to each client of the conference call, the complexity of the network protocol is increased. An accommodation can be made at the server so that all of the "non-talking" clients in a conference call receive the same combined signal. While this alleviates some of the network congestion problems prevalent in the above-described server-based conferencing method, it tends to increase the complexity of the protocol and often provides less than adequate conferencing quality. The compositions of the groups of "talking" clients and of "silent" clients are extremely dynamic. As such, the server is constantly updating its determinations of which signals to combine at various strengths and what type of signal to provide a given client depending upon which clients are "talking" and which clients are "silent". Often, the updates are not immediate, resulting in cropped speech, erroneous mixing, etc.